Prediction controller

ABSTRACT

There is provided a prediction controller which requires a small amount of memory and a small amount of calculation performed in each sampling period and which can cope with a delay in the detection of an output to be controlled. 
     In a prediction controller wherein the output of an object to be controlled whose transfer function model is 
     
         Gp(z)=(b.sub.1 z.sup.-1 + . . . +b.sub.Nb z.sup.-Nb)/{(1-z.sup.-1) 
    
      (1-a 1  z -1  - . . . -a Na  z -Na )} 
     is brought into agreement with a target command by inputting an increment Δr(i+M) for the target command at the M-th sampling in the future and an increment Δy(i-K) for the output of the object to be controlled at the K-th sampling (K≧0) in the past and by outputting a control input v(i) to the object to be controlled at the current point in time i, the present invention includes a means for storing the increment of the target command, constants for prediction control, the increment of the past output, and control input in the past, a means for obtaining a deviation e(i-K) from the increment of the target command and the increment of the output of the object to be controlled, and a means for determining the control input v(i) at the current point in time.

The present invention relates to a controller for machine tools, robots,etc.

The applicant has proposed a prediction control technique in Japaneseunexamined patent publication No. Hei-3-203882 (Japanese examined patentpublication No. Hei-5-27829). According to this technique, the firstseveral step responses of an object to be controlled are sampled andcontrol inputs are determined so that a predicted deviation isminimized, using a model which is an approximation obtained on theassumption that the increment will be attenuated at a constant ratio.

Prediction control techniques utilizing a transfer function model of anobject to be controlled include that described by Hashimoto, Kuroyanagi,and Harashima in "Prediction Control of Servo Systems Utilizing DSP", p.990-996 of Bulletin D No. 9, the Institute of Electrical Engineers,1990, and that described by Tamura, Nishitani, and Kunugida in "ModelPrediction Control of Integral Processes" p. 367, Vol. 56 of the Memoirof Annual Lecture Meeting of Chemical Industries Association, 1991.

The technique disclosed in Japanese unexamined patent publication No.Hei-3-203882 requires step responses from an object to be controlled topredict future deviations. The step responses may be calculated by meansof simulation if a transfer function model of the object to becontrolled is available. However, this process is indirect and involvescorresponding time and labor.

The technique proposed by Hashimoto et al. wherein a transfer functionmodel is directly used to predict a deviation has had problems in that agreat deal of calculation is involved in measuring the control inputperformed in each sampling period; since the performance criterion doesnot include the term of control input, the range for prediction must belarge to keep the degree of correction low, which further increases theamount of calculation; since a target command, output, and control inputare used as they are, the data has a large bit length which requires alarge memory and significant calculation; and there is no way to dealwith a delay in the detection of the output to be controlled.

The technique proposed by Tamura et al. has had problems in that itinvolves matrix calculations of higher orders, including inverse matrixcalculations, when the model is at a high order or the range forprediction is large; since a target command, output, and control inputare used as they are, the data has a large bit length which requires alarge memory and a lot of calculation; and there is no way to deal witha delay in the detection of the output to be controlled.

SUMMARY OF THE INVENTION

It is an object of the present invention to provide a predictivecontroller which requires only a small amount of memory and minimalcalculation during each sampling period, and which can cope with a delayin the detection of the output to be controlled.

In a prediction controller wherein the output of an object to becontrolled has a transfer function model of

    Gp(z)=(b.sub.1 z.sup.-1 + . . . +b.sub.Nb z.sup.-Nb)/{(1-z.sup.-1) (1-a.sub.1 z.sup.-1 - . . . -a.sub.Na z.sup.-Na)}

and is brought into agreement with a target command by inputting anincrement Δr(i+M) for the target command at the M-th sampling in thefuture and an increment Δy(i-K) as an output from the object to becontrolled at the K-th sampling (K≧0) in the past representation of anactual displacement and by outputting a control input v(i) to the objectto be controlled at the current point in time i, characterized in thatit includes a means for storing the increment for the target command,constants for prediction control, the increment for the past output, andcontrol input in the past, a means for obtaining a deviation e(i-K) fromthe increment for the target command and the increment for the output ofthe object to be controlled, and a means for determining the controlinput v(i) at the current point in time from: ##EQU1## where vm, pn, E,and gn are constants for prediction control.

The above-described means make it possible to provide a predictioncontroller which requires only a small amount of memory and minimalcalculation during each sampling period and which can cope with a delayin the detection of an output to be controlled, thereby allowingfollow-up operations of higher accuracy.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGURE 1 shows a specific embodiment of the present invention.

DETAILED DESCRIPTION OF

A specific embodiment of the present invention will now be describedwith reference to FIGURE 1. In this figure, 1 designates a predictioncontroller according to the present invention wherein an incrementΔr(i+M) for the target command in the future and an increment Δy(i-K)for the output of the object to be controlled in the K-th sampling (K≧0)in the past are input and a control input v(i) is output to controlledobject 10, that is, the object to be controlled at the current point intime i; 2 designates a memory for storing increments for the targetcommand Δr(i-K), . . . , Δr(i+M); 3 designates a memory for storingconstants E, v_(-K+1), . . . , v_(M), p₀, . . . , p_(Na-1), g₁, . . . ,g_(Nb+K-1) ; 4 designates a memory for storing increments for outputΔy(i-K), . . . , Δy(i-K-Na+1); 5 designates a memory for control inputsin the past v(i-1), . . . , v(i-K-Nb+1); 7 designates a subtracter forobtaining a difference Δe(i-K) between the increment of the targetcommand Δr(i-K) stored in the memory 2 and the increment for the outputΔy(i-K) of the controlled object 10; 8 designates an integrator forobtaining e(i-K) from Δe(i-K); and 6 designates a computing elementwhich computes the control input v(i) through a calculation: ##EQU2##The calculated v(i) is stored in the memory 5 and is output to thecontrolled object 10 as an output of the prediction controller 1.

Equation (1) is now derived. Assume that the transfer function of thecontrolled object 10 is given in a discrete time system expressed by:

    Gp(z)=(b.sub.1 z.sup.-1 + . . . +b.sub.Nb z.sup.-Nb)/{(1-z.sup.-1) (1-a.sub.1 z.sup.-1 - . . . -a.sub.Na z.sup.-Na)}

Then, a model for the increments of the input and output thereof isgiven by the following equation. ##EQU3## where Δ represents anincrement of the sampling period.

Since an actual measured value Δy(i-n)(n≧K) for the increment of theoutput until a point in time i-K has been obtained from the controlledobject 10 at the current point in time i, subsequent increments of theoutput are predicted using the actual measured value as follows.##EQU4## Then, a predicted value Δy*(i+m) of the increment of the outputis given by the following equation. ##EQU5## The coefficients Amn andBmn are given by the following equations, where a control input infuture is expressed by v(j)=0(j>i). ##EQU6## Bm0 in Equation (6b) isdeveloped into the following equation where v(j)=v(i)(j>i). ##EQU7##

A predicted value e*(i+m) for a deviation in the future is given by:##EQU8## The control input v(i) is determined to minimize an performancecriterion: ##EQU9## Then, the above-described Equation (1) is obtainedfrom ∂J/∂v(i)=0. The constants vm, pn, E, and gn are given by thefollowing equations. ##EQU10##

Equation (1) can be rewritten as follows using the increment Δv of thecontrol input: ##EQU11## where Gn is given by the following equationfrom gn in Equation (9): ##EQU12##

The present invention can be used for controlling object such as machinetools, robots, etc.

We claim:
 1. A predictive controller for controlling a controlled objectwherein the controlled object has a transfer function model defined by

    Gp(z)=(b.sub.1 z.sup.-1 + . . . +b.sub.Nb z.sup.-Nb)/{(1-z.sup.-1) (1-a.sub.1 z.sup.-1 - . . . -a.sub.Na z.sup.-Na)},

is responsive to control inputs and outputs measured displacementincrements of said controlled object, the predictive controllercomprising: means for inputting target command increments including anincrement Δr(i+M) as a target command at an M-th sampling in the future;means for inputting said measured displacement increments of saidcontrolled object which are output by said controlled object includingan increment Δy(i-K) representing a measured physical displacement ofthe controlled object at a K-th sampling (K≧0) in the past; means foroutputting said control inputs to the controlled object wherein acontrol input v(i) is output to the controlled object at a current pointin time i to instruct the controlled object to execute a physicaldisplacement; memory means for storing the target command increments,constants for prediction control, the measured displacement increments,and the control inputs which have been output to the controlled object;a means for obtaining a deviation e(i-K) from the target commandincrements and the measured displacement increments of the controlledobject; means for determining the control input v(i) at the currentpoint in time from: ##EQU13## where v_(m), p_(n), E, and g_(n) areconstants for prediction control.
 2. A predictive controller forcontrolling a controlled object wherein the controlled object has atransfer function model defined by

    Gp(z)=(b.sub.1 z.sup.-1 + . . . +b.sub.Nb z.sup.-Nb)/{(1-z.sup.-1) (1-a.sub.1 z.sup.-1 - . . . -a.sub.Na z.sup.-Na)},

is responsive to control inputs and outputs measured displacementincrements of said controlled object, the predictive controllercomprising: means for inputting target command increments including anincrement Δr(i+M) as a target command at an M-th sampling in the future;means for inputting said measured displacement increments of saidcontrolled object which are output by said controlled object includingan increment Δy(i-K) representing a measured physical displacement ofthe controlled object at a K-th sampling (K≧0) in the past; means foroutputting said control inputs to the controlled object wherein acontrol input v(i) is output to the controlled object at a current pointin time i to instruct the controlled object to execute a physicaldisplacement; first memory means for storing the target commandincrements, constants for prediction control, the measured displacementincrements, and the control inputs which have been output to thecontrolled object; means for obtaining a deviation e(i-K) from thetarget command increments and the measured displacement increments ofthe controlled object; said memory means further storing increments ofthe control inputs which have been output to the controlled object; anda means for determining the control input v(i) at the current point intime from: ##EQU14## where v_(m), p_(n), E, and G_(n) are constants forprediction control.
 3. A predictively controlled apparatus comprising:acontrolled object responsive to control inputs for effecting physicaldisplacements by said controlled object wherein the controlled objecthas a transfer function model defined by

    Gp(z)=(b.sub.1 z.sup.-1 + . . . +b.sub.Nb z.sup.-Nb)/{(1-z.sup.-1) (1-a.sub.1 z.sup.-1 - . . . -a.sub.Na z.sup.-Na)}

and said controlled object including means for outputting measureddisplacement increments of said controlled object; and a predictivecontroller comprising:means for inputting target command incrementsincluding an increment Δr(i+M) as a target command at an M-th samplingin the future; means for inputting said measured displacement incrementsof said controlled object which are output by said controlled objectincluding an increment Δy(i-K) representing a measured physicaldisplacement of the controlled object at a K-th sampling (K≧0) in thepast; means for outputting said control inputs to the controlled objectwherein a control input v(i) is output to the controlled object at acurrent point in time i to instruct the controlled object to execute aphysical displacement; memory means for storing the target commandincrements, constants for prediction control, the measured displacementincrements, and the control inputs which have been output to thecontrolled object; a means for obtaining a deviation e(i-K) from thetarget command increments and the measured displacement increments ofthe controlled object; means for determining the control input v(i) atthe current point in time from: ##EQU15## where v_(m), p_(n), E, andg_(n) are constants for prediction control.
 4. A predictively controlledapparatus comprising:a controlled object responsive to control inputsfor effecting physical displacements by said controlled object whereinthe controlled object has a transfer function model defined by

    Gp(z)=(b.sub.1 z.sup.-1 + . . . +b.sub.Nb z.sup.-Nb)/{(1-z.sup.-1) (1-a.sub.1 z.sup.-1 - . . . -a.sub.Na z.sup.-Na)},

and said controlled object including means for outputting measureddisplacement increments of said controlled object; and a predictivecontroller comprising:means for inputting target command incrementsincluding an increment Δr(i+M) as a target command at an M-th samplingin the future; means for inputting said measured displacement incrementsof said controlled object which are output by said controlled objectincluding an increment Δy(i-K) representing a measured physicaldisplacement of the controlled object at a K-th sampling (K≧0) in thepast; means for outputting said control inputs to the controlled objectwherein a control input v(i) is output to the controlled object at acurrent point in time i to instruct the controlled object to execute aphysical displacement; first memory means for storing the target commandincrements, constants for prediction control, the measured displacementincrements, and the control inputs which have been output to thecontrolled object; means for obtaining a deviation e(i-K) from thetarget command increments and the measured displacement increments ofthe controlled object; said memory means further storing increments ofthe control inputs which have been output to the controlled object; anda means for determining the control input v(i) at the current point intime from: ##EQU16## where v_(m), p_(n), E, and G_(n) are constants forprediction control.